home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 021-030 / amok28 / useprefs / mupf.mod < prev    next >
Text File  |  1993-11-04  |  6KB  |  138 lines

  1. (*--------------------------------------------------------------------------
  2.     :Program.      MUPF.mod
  3.     :Author.       Norbert Süßdorf
  4.     :Address.      Körnerstraße 6, D 6840 Lampertheim 1
  5.     :Phone.        06206/2212
  6.     :History.      V1.0, 3-September-1989
  7.     :Copyright.    Norbert Süßdorf 1989.(program freely distributable)
  8.     :Language.     Modula-II
  9.     :Translator.   M2Amiga 3.2d
  10.     :Contents.     'system-configuration' per Mausklick als
  11.     :Contents.     RAM-Datei (mit Icon), zur Verwendung mit 'UsePrefs'.
  12. ---------------------------------------------------------------------------*)
  13. MODULE MUPF;
  14.  
  15. (* $R- $V- $S- $F- *)
  16.  
  17. FROM SYSTEM    IMPORT ADR,INLINE;
  18. FROM Arts      IMPORT Requester,Terminate;
  19. FROM ASCII     IMPORT eol;
  20. FROM Dos       IMPORT Open,Close,Read,Write,FileHandlePtr,oldFile,
  21.                       newFile,Delay;
  22. FROM Icon      IMPORT GetDiskObject,PutDiskObject,FreeDiskObject;
  23. FROM Workbench IMPORT noIconPosition,DiskObjectPtr;
  24. FROM Intuition IMPORT GetPrefs;
  25.  
  26. TYPE String = ARRAY [0..79] OF CHAR;
  27.  
  28. VAR
  29.       ConFigFile,MupfFile,Console   : FileHandlePtr;
  30.       MyObject                      : DiskObjectPtr;
  31.       Buffer                        : ARRAY [0..255] OF CHAR;
  32.       x,MessLen                     : CARDINAL;
  33.       written,Lenge                 : LONGINT;
  34.       OutMessage                    : ARRAY [0..13] OF String;
  35.       done                          : BOOLEAN;
  36.  
  37. PROCEDURE IconDaten; (* $E- *)
  38.  
  39. BEGIN
  40.  
  41. INLINE(0E310H,00001H,00000H,00000H,00089H,0000FH,00027H,00016H);
  42. INLINE(00004H,00003H,00001H,00001H,0DD88H,00000H,00000H,00000H);
  43. INLINE(00000H,00000H,00000H,00000H,00000H,00000H,00000H,00000H);
  44. INLINE(00405H,00001H,0DDA0H,00000H,0AE80H,00000H,00077H,00000H);
  45. INLINE(00004H,00000H,00000H,00000H,00000H,00000H,00000H,00000H);
  46. INLINE(00000H,00027H,00015H,00002H,00006H,07660H,00300H,00000H);
  47. INLINE(00000H,00000H,00000H,00000H,03FFFH,0FFFFH,0F800H,03FFFH);
  48. INLINE(0FFFFH,0F800H,03521H,02021H,09800H,03FFFH,0FFFFH,0F800H);
  49. INLINE(03FFEH,0007FH,0F800H,03218H,0FF18H,01800H,03FF3H,0FFCFH);
  50. INLINE(0F800H,03FE7H,0C3E7H,0F800H,03260H,013E4H,01800H,03FFFH);
  51. INLINE(0E7CFH,0F800H,03FFFH,09F3FH,0F800H,03213H,03E64H,09800H);
  52. INLINE(03FFEH,07CFFH,0F800H,03FFFH,001FFH,0F800H,03086H,07CC8H);
  53. INLINE(01800H,03FFFH,001FFH,0F800H,03033H,0FF20H,01800H,03FFFH);
  54. INLINE(0FFFFH,0F800H,03FFFH,0FFFFH,0F800H,00000H,00000H,00000H);
  55. INLINE(0FFFFH,0FFFFH,0FE00H,0C000H,00000H,00600H,0C000H,00000H);
  56. INLINE(00600H,0CADEH,0DFDEH,06600H,0C000H,00000H,00600H,0C001H);
  57. INLINE(0FF80H,00600H,0CDE7H,0FFE7H,0E600H,0C00FH,0FFF0H,00600H);
  58. INLINE(0C01FH,0FFF8H,00600H,0CD9FH,0EFFBH,0E600H,0C000H,01FF0H);
  59. INLINE(00600H,0C000H,07FC0H,00600H,0CDECH,0FF9BH,06600H,0C001H);
  60. INLINE(0FF00H,00600H,0C000H,0FE00H,00600H,0CF79H,0FF37H,0E600H);
  61. INLINE(0C000H,0FE00H,00600H,0CFCCH,000DFH,0E600H,0C000H,00000H);
  62. INLINE(00600H,0C000H,00000H,00600H,0FFFFH,0FFFFH,0FE00H,00000H);
  63. INLINE(00013H,05359H,0533AH,07072H,06566H,0732FH,05573H,06550H);
  64. INLINE(07265H,06673H,00000H,00000H,00800H,00000H,02928H,0636FH);
  65. INLINE(06E66H,06967H,07572H,06174H,0696FH,06E20H,06669H,06C65H);
  66. INLINE(02063H,07265H,06174H,06564H,02062H,07920H,04D55H,05046H);
  67. INLINE(02031H,02E30H,02900H);
  68.  
  69. END IconDaten;
  70.  
  71. BEGIN
  72.  
  73.  OutMessage[0]:="******************************************************";
  74.  OutMessage[1]:="* MUPF = M(ake) U(se)P(refs) F(ile) ... version 1.0  *";
  75.  OutMessage[2]:="******************************************************";
  76.  OutMessage[3]:="* Copyrights by N.Süßdorf '89 (freely distributable) *";
  77.  OutMessage[4]:="* -------------------------------------------------- *";
  78.  OutMessage[5]:="*   DONE. Please open RAM DISK, rename configuration *";
  79.  OutMessage[6]:="*         file and copy where needed !               *";
  80.  OutMessage[7]:="*                                                    *";
  81.  OutMessage[8]:="* FERTIG. Bitte RAM DISK öffnen, Konfigurationsdatei *";
  82.  OutMessage[9]:="*         umbenennen und auf Diskette kopieren !     *";
  83. OutMessage[10]:="*                                                    *";
  84. OutMessage[11]:="******************************************************";
  85. OutMessage[12]:="                                                      ";
  86. OutMessage[13]:="Quit = <RETURN> ";
  87. MessLen:=54;
  88.  
  89.     Console:=Open(ADR("CON:10/25/580/160/ MUPF 1.0 "),newFile);
  90.  IF Console = NIL THEN
  91.     done:=Requester(ADR("MUPF: No CON:-window !"),
  92.                     ADR("MUPF: Kein CON:-Fenster !"),NIL,ADR("QUIT"));
  93.     Terminate(0);
  94.  END;
  95.  
  96.    FOR x:=0 TO 4 DO
  97.        OutMessage[x,MessLen]:=eol;
  98.        written:=Write(Console,ADR(OutMessage[x]),MessLen+1);
  99.    END;
  100.  
  101.    GetPrefs(ADR(Buffer),232);
  102.  
  103.        MupfFile:=Open(ADR("ram:MUPFdata"),newFile);
  104.     IF MupfFile # NIL THEN
  105.        Lenge:=Write(MupfFile,ADR(Buffer),232);
  106.        Close(MupfFile);
  107.     ELSE
  108.        done:=Requester(ADR("MUPF: couldn't create file !"),
  109.                        ADR("MUPF: Datei nicht erzeugt !"),NIL,ADR("QUIT"));
  110.        Close(Console);Terminate(0);
  111.     END;
  112.  
  113.        MupfFile:=Open(ADR("ram:MUPFdata.info"),newFile);
  114.     IF MupfFile # NIL THEN
  115.        Lenge:=Write(MupfFile,ADR(IconDaten),422);
  116.        Close(MupfFile);
  117.     ELSE
  118.        done:=Requester(ADR("MUPF: couldn't create icon !"),
  119.                        ADR("MUPF: Ikone nicht erzeugt !"),NIL,ADR("QUIT"));
  120.        Close(Console);Terminate(0);
  121.     END;
  122.  
  123.      MyObject:=GetDiskObject(ADR("ram:MUPFdata"));
  124.      MyObject^.currentX:=noIconPosition;
  125.      MyObject^.currentY:=noIconPosition;
  126.      written:=PutDiskObject(ADR("ram:MUPFdata"),MyObject);
  127.      FreeDiskObject(MyObject);
  128.  
  129.  FOR x:=5 TO 12 DO
  130.      OutMessage[x,MessLen]:=eol;
  131.      written:=Write(Console,ADR(OutMessage[x]),MessLen+1);
  132.  END;
  133.    written:=Write(Console,ADR(OutMessage[13]),16);
  134.    Lenge:=Read(Console,ADR(Buffer),1);
  135.    Close(Console);
  136.  
  137. END MUPF.
  138.